#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>
#include<assert.h>
#include<malloc.h>
typedef int dataty;
typedef struct heap
{
	dataty* a;
	int size;
	int cap;
}sl;

void dunInit(sl* p);
void dunpush(sl* p, dataty x);
void adjust(int* c, int child, int m);
void heapprintf(sl* p);
bool heapempty(sl* p);
int heapsize(sl* p);
void heappop(sl* p);
void heapswap(int* p, int* q);
void printtop(int* a, int max, int num);
void justdown(int* a, int n, int parent);
dataty heaptop(sl* p);